<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style scoped lang="less">
      .form-preview {
        position: relative;
        display: flex;
        align-items: center;
      }
      .form-preview h2 {
        font-size: 18px;
        font-weight: normal;
      }
      .form-preview small {
        font-size: 12px;
        display: inline-block;
        padding: 2px 6px;
        background: #27ba9b;
        color: #fff;
        border-radius: 2px;
        transform: scale(0.8);
      }
      .form-preview .btn-edit {
        font-size: 12px;
        display: none;
        text-decoration: none;
        color: #069;
        margin-left: 20px;
      }
      .form-preview:hover .btn-edit {
        display: block;
      }
      .form-edit {
        padding-top: 20px;
      }
      .form-item {
        display: flex;
        margin-bottom: 20px;
        align-items: center;
      }
      .form-item .label {
        width: 60px;
        text-align: right;
        font-size: 14px;
      }
      .form-item .input {
        flex: 1;
      }
      .form-item input,
      .form-item select {
        appearance: none;
        outline: none;
        border: 1px solid #ccc;
        width: 200px;
        height: 40px;
        box-sizing: border-box;
        padding: 10px;
        color: #666;
      }
      .form-item input::placeholder {
        color: #666;
      }
      .form-item .cancel,
      .form-item .submit {
        appearance: none;
        outline: none;
        border: 1px solid #ccc;
        border-radius: 4px;
        padding: 4px 10px;
        margin-right: 10px;
        font-size: 12px;
        background: #ccc;
      }
      .form-item .submit {
        border-color: #069;
        background: #069;
        color: #fff;
      }
    </style>
  </head>
  <body>
    <div id="app" class="article-case">
      <div v-if="flagShow" class="form-preview">
        <h2>{{title}}</h2>
        <small>{{label}}</small>
        <a class="btn-edit" @click="edit()" href="#">编辑</a>
      </div>

      <div class="form-edit" v-else="flagForm">
        <div class="form-item">
          <div class="label">标题：</div>
          <div class="input">
            <input type="text" placeholder="请输入标题" v-model="title" />
          </div>
        </div>
        <div class="form-item">
          <div class="label">频道：</div>
          <div class="input">
            <select v-model="label">
              <option value="">请选择频道</option>
              <option value="前端">前端</option>
              <option value="运维">运维</option>
              <option value="测试">测试</option>
            </select>
          </div>
        </div>
        <div class="form-item">
          <div class="label"></div>
          <div class="input">
            <button @click="submit()" class="cancel">取消</button>
            <button @click="submit()" class="submit">确认</button>
          </div>
        </div>
      </div>
    </div>
  </body>
  <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
  <script>
    let app = new Vue({
      el: "#app",
      data: {
        title: "如何成为前端大佬",
        label: "前端",
        // flagForm: false,
        flagShow: false,
      },
      methods: {
        edit() {
          // (this.flagForm = true),
          this.flagShow = false;
        },
        submit() {
          // (this.flagForm = false),
          this.flagShow = true;
        },
      },
    });
  </script>
</html>
